翻訳と辞書
Words near each other
・ ladder logic
・ lady
・ lag
・ lakota
・ lalr
・ lalr.ss
・ lambada-calculus
・ lambda
・ lambda abstraction
・ lambda expression
lambda lifting
・ lambda prolog
・ lambda-calculus
・ lambdamoo
・ lamer
・ lamina
・ lamp-post error
・ lan
・ lan administrator
・ lan kanal adapter


Dictionary Lists
翻訳と辞書 辞書検索 [ 開発暫定版 ]
スポンサード リンク

lambda lifting : FOLDOC
lambda lifting
A program transformation to remove free variables. An expression containing a free variable is replaced by a function applied to that variable. E.g.
f x = g 3 where g y = y + x

x is a free variable of g so it is added as an extra argument:
f x = g 3 x where g y x = y + x

Functions like this with no free variables are known as supercombinators and are traditionally given upper-case names beginning with "$". This transformation tends to produce many supercombinators of the form f x = g x which can be eliminated by eta reduction and substitution. Changing the order of the parameters may also allow more optimisations. References to global (top-level) constants and functions are not transformed to function parameters though they are technically free variables.
A closely related technique is closure conversion. See also Full laziness.



スポンサード リンク
翻訳と辞書 : 翻訳のためのインターネットリソース

Copyright(C) kotoba.ne.jp 1997-2016. All Rights Reserved.